﻿// ----------------------------------------------------------------------------------
// <copyright file="SignText.cs" company="Christopher Hines">
// Copyright (c) 2012 All Right Reserved
// </copyright>
// <author>Chris Hines</author>
// <date>2012-03-23</date>
// <summary>
//     Sign Text Data
// </summary>
// ----------------------------------------------------------------------------------

namespace Copperfield.Demo.Common
{
    using System.Collections.Generic;
    using System.Linq;

    /// <summary>
    /// Sign Text Data
    /// </summary>
    public static class SignText
    {
        /// <summary>
        /// Gets the pedestrians text
        /// </summary>
        /// <value>
        /// The pedestrians text
        /// </value>
        public const string Pedestrians = "Pedestrian Crossing";

        /// <summary>
        /// Gets the hospital sign text
        /// </summary>
        /// <value>
        /// The hospital sign text
        /// </value>
        public const string Hospital = "Hospital";

        /// <summary>
        /// Gets the railroad crossing sign text
        /// </summary>
        /// <value>
        /// The railroad crossing sign text
        /// </value>
        public const string Railroad = "Railroad Crossing";

        /// <summary>
        /// Gets the speed limit sign text
        /// </summary>
        /// <value>
        /// The speed limit sign text
        /// </value>
        public const string SpeedLimit = "Speed Limit";

        /// <summary>
        /// Gets the stop sign text
        /// </summary>
        /// <value>
        /// The stop sign text
        /// </value>
        public const string Stop = "Stop";

        /// <summary>
        /// Gets the unknown sign text
        /// </summary>
        /// <value>
        /// The unknown sign text
        /// </value>
        public const string Unknown = "Unknown";

        /// <summary>
        /// Gets the collection of text values
        /// </summary>
        /// <value>
        /// The collection of text values
        /// </value>
        private static readonly List<string> values = new List<string>
            {
                Pedestrians,
                Hospital,
                Railroad,
                SpeedLimit,
                Stop,
                Unknown
            }; 

        /// <summary>
        /// Returns the collection of text values
        /// </summary>
        /// <returns>
        /// The collection of text values
        /// </returns>
        public static List<string> Values()
        {
            return values.OrderBy(x => x).ToList();
        }
    }
}
